
#include "data.h"
#include "UART.h"


STAV valid_Data(const char arg_znak)
{
	if(arg_znak=='$')
	{
		return START_RAMCE;
	}
	return 0;
}


STAV read_Data(char znak)
{
	GPSdata *loc_ptr;
	char loc_znak;
	#ifndef INIT				// Prvni prubeh - inicialiazace reference
		loc_ptr=ptr_reference;		
	#endif
	#ifdef INIT
		loc_ptr=ptr_aktualni;
	#endif
	

	for(int i=0;i<45;i++)
	{
		loc_znak=read_UART();
		if((i==3)&&(loc_znak!='R'))
		{
			return NESPRAVNY_VSTUP;
		}
		
		if((i==18)&&(loc_znak!='A'))		//<! Nejsou validni data
		{
			return NEPLATNA_DATA;				//<! Kod 
		}

		if(i>18)
		{
			switch(loc_znak)
			{
				case '.':
				case ',':
				case 'E':
				case 'N':
					break;
				default:
				 pole[i-18]=loc_znak;		//<! Ulozeni platnejch dat
			}
		}
	}
	#ifndef INIT
	#define INIT
	#endif
	return PLATNA_DATA;
	//Platny data #ifnded INIT, #define INIT
}	



